home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / ccdl151s.zip / SOURCE / SYMCHAR.C < prev    next >
C/C++ Source or Header  |  1997-03-15  |  8KB  |  419 lines

  1. /*
  2.  * 68K/386 32-bit C compiler.
  3.  *
  4.  * copyright (c) 1997, David Lindauer
  5.  * 
  6.  * This compiler is intended for educational use.  It may not be used
  7.  * for profit without the express written consent of the author.
  8.  *
  9.  * It may be freely redistributed, as long as this notice remains intact
  10.  * and either the original sources or derived sources 
  11.  * are distributed along with any executables derived from the originals.
  12.  *
  13.  * The author is not responsible for any damages that may arise from use
  14.  * of this software, either idirect or consequential.
  15.  *
  16.  * v1.35 March 1997
  17.  * David Lindauer, gclind01@starbase.spd.louisville.edu
  18.  *
  19.  * Credits to Mathew Brandt for original K&R C compiler
  20.  *
  21.  */
  22. /* 
  23.  * This is a mapping for CTYPE type functions to work with phitext
  24.  */
  25. #include <stdio.h>
  26. #include "utype.h"
  27. #include "interp.h"
  28.  
  29. BYTE startchars[256] ={
  30. /* Bank 0 */
  31.     0x00,0x00,0x00,0x00,
  32.     0x08,0x00,0x00,0x00,
  33.     0x7f,0xff,0xff,0xe1,
  34.     0x7f,0xff,0xff,0xe0,
  35.  
  36. /* Bank 1 */
  37.     0x00,0x00,0x00,0x00,
  38.     0x00,0x00,0x00,0x00,
  39.     0x00,0x7e,0x11,0x00,
  40.     0x00,0x00,0x00,0x00,
  41.  
  42. /* Bank 2 */
  43.     0x00,0x00,0x00,0x00,
  44.     0x00,0x00,0xff,0xff,
  45.     0xff,0xff,0xff,0xff,
  46.     0xff,0xff,0xff,0xff,
  47.  
  48. /* Bank 3 */
  49.     0x00,0x00,0x00,0x00,
  50.     0x00,0x00,0x00,0x00,
  51.     0xff,0xff,0xff,0xff,
  52.     0xff,0xfc,0x00,0x00,
  53.  
  54. /* Bank 4*/
  55.     0x00,0x00,0x00,0x00,
  56.     0x00,0x00,0x00,0x00,
  57.     0xff,0xff,0xff,0x00,
  58.     0xff,0xff,0xff,0x00,
  59.  
  60. /* Bank 5*/
  61.     0x00,0x00,0x00,0x00,
  62.     0x00,0x00,0x00,0x00,
  63.     0xff,0xff,0xf8,0x00,
  64.     0xff,0xff,0xff,0xf0,
  65.  
  66. /* Bank 6 */
  67.     0x00,0x00,0x00,0x00,
  68.     0x00,0x00,0x00,0x00,
  69.     0x00,0x00,0x00,0x00,
  70.     0x00,0x00,0x00,0x00,
  71.  
  72. /* Bank 7 */
  73.     0x00,0x00,0x00,0x00,
  74.     0x00,0x00,0x00,0x00,
  75.     0x00,0x00,0x00,0x00,
  76.     0x00,0x00,0x00,0x00,
  77.  
  78. /* Bank 8 */
  79.     0x00,0x00,0x00,0x00,
  80.     0x00,0x00,0x00,0x00,
  81.     0x00,0x00,0x00,0x00,
  82.     0x00,0x00,0x00,0x00,
  83.  
  84. /* Bank 9 */
  85.     0x00,0x00,0x00,0x00,
  86.     0x00,0x00,0x00,0x00,
  87.     0x00,0x00,0x00,0x00,
  88.     0x00,0x00,0x00,0x00,
  89.  
  90. /* Bank 10 */
  91.     0x00,0x00,0x00,0x00,
  92.     0x00,0x00,0x00,0x00,
  93.     0x00,0x00,0x00,0x00,
  94.     0x00,0x00,0x00,0x00,
  95.  
  96. /* Bank 11 */
  97.     0x00,0x00,0x00,0x00,
  98.     0x00,0x00,0x00,0x00,
  99.     0x00,0x00,0x00,0x00,
  100.     0x00,0x00,0x00,0x00,
  101.  
  102. /* Bank 12 */
  103.     0x00,0x00,0x00,0x00,
  104.     0x00,0x00,0x00,0x00,
  105.     0x00,0x00,0x00,0x00,
  106.     0x00,0x00,0x00,0x00,
  107.  
  108. /* Bank 13 */
  109.     0x00,0x00,0x00,0x00,
  110.     0x00,0x00,0x00,0x00,
  111.     0x00,0x00,0x00,0x00,
  112.     0x00,0x00,0x00,0x00,
  113.  
  114. /* Bank 14 */
  115.     0x00,0x00,0x00,0x00,
  116.     0x00,0x00,0x00,0x00,
  117.     0x00,0x00,0x00,0x00,
  118.     0x00,0x00,0x00,0x00,
  119.  
  120. /* Bank 15 */
  121.     0x00,0x00,0x00,0x00,
  122.     0x00,0x00,0x00,0x00,
  123.     0x00,0x00,0x00,0x00,
  124.     0x00,0x00,0x00,0x00
  125. };
  126.  
  127. BYTE symchars[256] ={
  128. /* Bank 0 */
  129.     0x00,0x00,0x00,0x00,
  130.     0x08,0x00,0xff,0xc0,
  131.     0x7f,0xff,0xff,0xe1,
  132.     0x7f,0xff,0xff,0xe0,
  133.  
  134. /* Bank 1 */
  135.     0x00,0x00,0x00,0x00,
  136.     0x00,0x00,0x00,0x00,
  137.     0x00,0x7e,0x11,0x00,
  138.     0x00,0x00,0x00,0x00,
  139.  
  140. /* Bank 2 */
  141.     0x00,0x00,0x00,0x00,
  142.     0x00,0x00,0xff,0xff,
  143.     0xff,0xff,0xff,0xff,
  144.     0xff,0xff,0xff,0xff,
  145.  
  146. /* Bank 3 */
  147.     0x00,0x00,0x00,0x00,
  148.     0x00,0x00,0x00,0x00,
  149.     0xff,0xff,0xff,0xff,
  150.     0xff,0xfc,0x00,0x00,
  151.  
  152. /* Bank 4*/
  153.     0x00,0x00,0x00,0x00,
  154.     0x00,0x00,0x00,0x00,
  155.     0xff,0xff,0xff,0x00,
  156.     0xff,0xff,0xff,0x00,
  157.  
  158. /* Bank 5*/
  159.     0x00,0x00,0x00,0x00,
  160.     0x00,0x00,0x00,0x00,
  161.     0xff,0xff,0xf8,0x00,
  162.     0xff,0xff,0xff,0xf0,
  163.  
  164. /* Bank 6 */
  165.     0x00,0x00,0x00,0x00,
  166.     0x00,0x00,0x00,0x00,
  167.     0x00,0x00,0x00,0x00,
  168.     0x00,0x00,0x00,0x00,
  169.  
  170. /* Bank 7 */
  171.     0x00,0x00,0x00,0x00,
  172.     0x00,0x00,0x00,0x00,
  173.     0x00,0x00,0x00,0x00,
  174.     0x00,0x00,0x00,0x00,
  175.  
  176. /* Bank 8 */
  177.     0x00,0x00,0x00,0x00,
  178.     0x00,0x00,0x00,0x00,
  179.     0x00,0x00,0x00,0x00,
  180.     0x00,0x00,0x00,0x00,
  181.  
  182. /* Bank 9 */
  183.     0x00,0x00,0x00,0x00,
  184.     0x00,0x00,0x00,0x00,
  185.     0x00,0x00,0x00,0x00,
  186.     0x00,0x00,0x00,0x00,
  187.  
  188. /* Bank 10 */
  189.     0x00,0x00,0x00,0x00,
  190.     0x00,0x00,0x00,0x00,
  191.     0x00,0x00,0x00,0x00,
  192.     0x00,0x00,0x00,0x00,
  193.  
  194. /* Bank 11 */
  195.     0x00,0x00,0x00,0x00,
  196.     0x00,0x00,0x00,0x00,
  197.     0x00,0x00,0x00,0x00,
  198.     0x00,0x00,0x00,0x00,
  199.  
  200. /* Bank 12 */
  201.     0x00,0x00,0x00,0x00,
  202.     0x00,0x00,0x00,0x00,
  203.     0x00,0x00,0x00,0x00,
  204.     0x00,0x00,0x00,0x00,
  205.  
  206. /* Bank 13 */
  207.     0x00,0x00,0x00,0x00,
  208.     0x00,0x00,0x00,0x00,
  209.     0x00,0x00,0x00,0x00,
  210.     0x00,0x00,0x00,0x00,
  211.  
  212. /* Bank 14 */
  213.     0x00,0x00,0x00,0x00,
  214.     0x00,0x00,0x00,0x00,
  215.     0x00,0x00,0x00,0x00,
  216.     0x00,0x00,0x00,0x00,
  217.  
  218. /* Bank 15 */
  219.     0x00,0x00,0x00,0x00,
  220.     0x00,0x00,0x00,0x00,
  221.     0x00,0x00,0x00,0x00,
  222.     0x00,0x00,0x00,0x00
  223. };
  224.  
  225. BYTE whitespacechars[256] ={
  226. /* Bank 0 */
  227.     0x00,0x68,0x00,0x00,
  228.     0x80,0x00,0x00,0x00,
  229.     0x00,0x00,0x00,0x00,
  230.     0x00,0x00,0x00,0x01,
  231.  
  232. /* Bank 1 */
  233.     0x00,0x00,0x00,0x00,
  234.     0x00,0x00,0x00,0x00,
  235.     0x00,0x00,0x00,0x00,
  236.     0x00,0x00,0x00,0x00,
  237.  
  238. /* Bank 2 */
  239.     0x00,0x00,0x00,0x00,
  240.     0x00,0x00,0x00,0x00,
  241.     0x00,0x00,0x00,0x00,
  242.     0x00,0x00,0x00,0x00,
  243.  
  244. /* Bank 3 */
  245.     0x00,0x00,0x00,0x00,
  246.     0x00,0x00,0x00,0x00,
  247.     0x00,0x00,0x00,0x00,
  248.     0x00,0x00,0x00,0x00,
  249.  
  250. /* Bank 4*/
  251.     0x00,0x00,0x00,0x00,
  252.     0x00,0x00,0x00,0x00,
  253.     0x00,0x00,0x00,0x00,
  254.     0x00,0x00,0x00,0x00,
  255.  
  256. /* Bank 5*/
  257.     0x00,0x00,0x00,0x00,
  258.     0x00,0x00,0x00,0x00,
  259.     0x00,0x00,0x00,0x00,
  260.     0x00,0x00,0x00,0x00,
  261.  
  262. /* Bank 6 */
  263.     0x00,0x00,0x00,0x00,
  264.     0x00,0x00,0x00,0x00,
  265.     0x00,0x00,0x00,0x00,
  266.     0x00,0x00,0x00,0x00,
  267.  
  268. /* Bank 7 */
  269.     0x00,0x00,0x00,0x00,
  270.     0x2a,0xa8,0xb1,0xd8,
  271.     0x80,0x76,0x3b,0x10,
  272.     0x08,0x04,0x02,0x01,
  273.  
  274. /* Bank 8 */
  275.     0x00,0x00,0x00,0x00,
  276.     0x00,0x00,0x00,0x00,
  277.     0x00,0x00,0x00,0x00,
  278.     0x00,0x00,0x00,0x00,
  279.  
  280. /* Bank 9 */
  281.     0x00,0x00,0x00,0x00,
  282.     0x00,0x00,0x00,0x00,
  283.     0x00,0x00,0x00,0x00,
  284.     0x00,0x00,0x00,0x00,
  285.  
  286. /* Bank 10 */
  287.     0x00,0x00,0x00,0x00,
  288.     0x00,0x00,0x00,0x00,
  289.     0x00,0x00,0x00,0x00,
  290.     0x00,0x00,0x00,0x00,
  291.  
  292. /* Bank 11 */
  293.     0x00,0x00,0x00,0x00,
  294.     0x00,0x00,0x00,0x00,
  295.     0x00,0x00,0x00,0x00,
  296.     0x00,0x00,0x00,0x00,
  297.  
  298. /* Bank 12 */
  299.     0x00,0x00,0x00,0x00,
  300.     0x00,0x00,0x00,0x00,
  301.     0x00,0x00,0x00,0x00,
  302.     0x00,0x00,0x00,0x00,
  303.  
  304. /* Bank 13 */
  305.     0x00,0x00,0x00,0x00,
  306.     0x00,0x00,0x00,0x00,
  307.     0x00,0x00,0x00,0x00,
  308.     0x00,0x00,0x00,0x00,
  309.  
  310. /* Bank 14 */
  311.     0x00,0x00,0x00,0x00,
  312.     0x00,0x00,0x00,0x00,
  313.     0x00,0x00,0x00,0x00,
  314.     0x00,0x00,0x00,0x00,
  315.  
  316. /* Bank 15 */
  317.     0x00,0x00,0x00,0x00,
  318.     0xff,0x00,0x00,0x00,
  319.     0x00,0x00,0x00,0x00,
  320.     0x00,0x00,0x00,0x00
  321. };
  322.     
  323. BYTE commentchars[256] ={
  324. /* Bank 0 */
  325.     0x00,0x00,0x00,0x00,
  326.     0x00,0x00,0x00,0x00,
  327.     0x00,0x00,0x00,0x00,
  328.     0x00,0x00,0x00,0x00,
  329.  
  330. /* Bank 1 */
  331.     0x00,0x00,0x00,0x00,
  332.     0x00,0x00,0x00,0x00,
  333.     0x00,0x00,0x00,0x00,
  334.     0x00,0x00,0x00,0x00,
  335.  
  336. /* Bank 2 */
  337.     0x00,0x00,0x00,0x00,
  338.     0x00,0x00,0x00,0x00,
  339.     0x00,0x00,0x00,0x00,
  340.     0x00,0x00,0x00,0x00,
  341.  
  342. /* Bank 3 */
  343.     0x00,0x00,0x00,0x00,
  344.     0x00,0x00,0x00,0x00,
  345.     0x00,0x00,0x00,0x00,
  346.     0x00,0x00,0x00,0x00,
  347.  
  348. /* Bank 4*/
  349.     0x00,0x00,0x00,0x00,
  350.     0x00,0x00,0x00,0x00,
  351.     0x00,0x00,0x00,0x00,
  352.     0x00,0x00,0x00,0x00,
  353.  
  354. /* Bank 5*/
  355.     0x00,0x00,0x00,0x00,
  356.     0x00,0x00,0x00,0x00,
  357.     0x00,0x00,0x00,0x00,
  358.     0x00,0x00,0x00,0x00,
  359.  
  360. /* Bank 6 */
  361.     0x00,0x00,0x00,0x00,
  362.     0x00,0x00,0x00,0x00,
  363.     0x00,0x00,0x00,0x00,
  364.     0x00,0x00,0x00,0x00,
  365.  
  366. /* Bank 7 */
  367.     0x00,0x00,0x00,0x00,
  368.     0xd5,0x54,0x4e,0x27,
  369.     0x7f,0x99,0xc4,0xef,
  370.     0xf7,0xfb,0xfd,0xfe,
  371.  
  372. /* Bank 8 */
  373.     0x00,0x00,0x00,0x00,
  374.     0x00,0x00,0x00,0x00,
  375.     0x00,0x00,0x00,0x00,
  376.     0x00,0x00,0x00,0x00,
  377.  
  378. /* Bank 9 */
  379.     0x00,0x00,0x00,0x00,
  380.     0x00,0x00,0x00,0x00,
  381.     0x00,0x00,0x00,0x00,
  382.     0x00,0x00,0x00,0x00,
  383.  
  384. /* Bank 10 */
  385.     0x00,0x00,0x00,0x00,
  386.     0x00,0x00,0x00,0x00,
  387.     0x00,0x00,0x00,0x00,
  388.     0x00,0x00,0x00,0x00,
  389.  
  390. /* Bank 11 */
  391.     0x00,0x00,0x00,0x00,
  392.     0x00,0x00,0x00,0x00,
  393.     0x00,0x00,0x00,0x00,
  394.     0x00,0x00,0x00,0x00,
  395.  
  396. /* Bank 12 */
  397.     0x00,0x00,0x00,0x00,
  398.     0x00,0x00,0x00,0x00,
  399.     0x00,0x00,0x00,0x00,
  400.     0x00,0x00,0x00,0x00,
  401.  
  402. /* Bank 13 */
  403.     0x00,0x00,0x00,0x00,
  404.     0x00,0x00,0x00,0x00,
  405.     0x00,0x00,0x00,0x00,
  406.     0x00,0x00,0x00,0x00,
  407.  
  408. /* Bank 14 */
  409.     0x00,0x00,0x00,0x00,
  410.     0x00,0x00,0x00,0x00,
  411.     0x00,0x00,0x00,0x00,
  412.     0x00,0x00,0x00,0x00,
  413.  
  414. /* Bank 15 */
  415.     0x00,0x00,0x00,0x00,
  416.     0x00,0xff,0x00,0x00,
  417.     0x00,0x00,0x00,0x00,
  418.     0x00,0x00,0x00,0x00
  419. };